/**
 * Copyright &copy; 2012-2016 <a href="https://github.com/thinkgem/jeesite">JeeSite</a> All rights reserved.
 */
package com.thinkgem.jeesite.modules.docdata.entity;

import org.hibernate.validator.constraints.Length;
import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;

import com.thinkgem.jeesite.common.persistence.DataEntity;

/**
 * 公文操作Entity
 * @author 公文操作
 * @version 2018-01-21
 */
public class EDocument extends DataEntity<EDocument> {
	
	private static final long serialVersionUID = 1L;
	private String number;		// 公文编号
	private String title;		// 公文副标题
	private String theme;		// 公文主题
	private String content;		// 公文内容
	private Integer readCount;		// 阅读量
	private String dense;		// 公文密级 &lsquo;0&rsquo; 普通
	private String signId;		// 签发人ID
	private String signDeptId;		// 签发部门
	private String summary;		// 内容概要
	private String filesId;		// 附件ID,使用,好隔开
	private Date signDate;		// 签发日期
	private Date beginSignDate;		// 开始 签发日期
	private Date endSignDate;		// 结束 签发日期
	
	public EDocument() {
		super();
	}

	public EDocument(String id){
		super(id);
	}

	@Length(min=0, max=50, message="公文编号长度必须介于 0 和 50 之间")
	public String getNumber() {
		return number;
	}

	public void setNumber(String number) {
		this.number = number;
	}
	
	@Length(min=0, max=200, message="公文副标题长度必须介于 0 和 200 之间")
	public String getTitle() {
		return title;
	}

	public void setTitle(String title) {
		this.title = title;
	}
	
	@Length(min=0, max=200, message="公文主题长度必须介于 0 和 200 之间")
	public String getTheme() {
		return theme;
	}

	public void setTheme(String theme) {
		this.theme = theme;
	}
	
	public String getContent() {
		return content;
	}

	public void setContent(String content) {
		this.content = content;
	}
	
	public Integer getReadCount() {
		return readCount;
	}

	public void setReadCount(Integer readCount) {
		this.readCount = readCount;
	}
	
	@Length(min=0, max=1, message="公文密级 &lsquo;0&rsquo; 普通长度必须介于 0 和 1 之间")
	public String getDense() {
		return dense;
	}

	public void setDense(String dense) {
		this.dense = dense;
	}
	
	@Length(min=0, max=50, message="签发人ID长度必须介于 0 和 50 之间")
	public String getSignId() {
		return signId;
	}

	public void setSignId(String signId) {
		this.signId = signId;
	}
	
	@Length(min=0, max=50, message="签发部门长度必须介于 0 和 50 之间")
	public String getSignDeptId() {
		return signDeptId;
	}

	public void setSignDeptId(String signDeptId) {
		this.signDeptId = signDeptId;
	}
	
	@Length(min=0, max=1000, message="内容概要长度必须介于 0 和 1000 之间")
	public String getSummary() {
		return summary;
	}

	public void setSummary(String summary) {
		this.summary = summary;
	}
	
	@Length(min=0, max=1000, message="附件ID,使用,好隔开长度必须介于 0 和 1000 之间")
	public String getFilesId() {
		return filesId;
	}

	public void setFilesId(String filesId) {
		this.filesId = filesId;
	}
	
	@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
	public Date getSignDate() {
		return signDate;
	}

	public void setSignDate(Date signDate) {
		this.signDate = signDate;
	}
	
	public Date getBeginSignDate() {
		return beginSignDate;
	}

	public void setBeginSignDate(Date beginSignDate) {
		this.beginSignDate = beginSignDate;
	}
	
	public Date getEndSignDate() {
		return endSignDate;
	}

	public void setEndSignDate(Date endSignDate) {
		this.endSignDate = endSignDate;
	}
		
}